Android  AbsoluteLayout 와 RelativeLayout 레이아웃 에 대한 자세 한 설명

Android 선형 레이아웃:AbsoluteLayout 레이아웃 과 RelativeLayout 레이아웃.
 1.절대 레이아웃
절대적 인 포 지 셔 닝 AbsoluteLayout 는 좌표 구조 라 고도 할 수 있 고 서브 요소 의 절대적 인 위 치 를 직접 지정 할 수 있다.이런 구 조 는 간단 하고 직접적 이 며 직관 성 이 강하 지만 핸드폰 화면 사이즈 의 차이 가 비교적 크기 때문에 절대적 인 포 지 셔 닝 을 사용 하 는 적응성 이 비교적 떨어진다.
다음은 예 를 들 어 보 겠 습 니 다.예 를 들 어 로봇 사진 의 크기 는 250 X 250 입 니 다.안 드 로 이 드:layot 를 사용 하 는 것 을 볼 수 있 습 니 다.x 와 android:layouty.하위 요소 의 종횡 좌 표를 지정 합 니 다.

<?xml version=”1.0″ encoding=”utf-8″?>
<AbsoluteLayout android:id=”@+id/AbsoluteLayout01″
android:layout_width=”fill_parent”
android:layout_height=”fill_parent”
xmlns:android=”http://schemas.android.com/apk/res/android”
android:background=”#fff”><ImageView
android:src=”@drawable/android”
android:layout_y=”40dip”
android:layout_width=”wrap_content”
android:layout_x=”35dip”
android:id=”@+id/ImageView01″
android:layout_height=”wrap_content”>
</ImageView>
<TextView
android:layout_height=”wrap_content”
android:layout_width=”fill_parent”
android:id=”@+id/TextView01″
android:text=”Android2.2     ”
android:textColor=”#0f0″
android:textSize=”28dip”
android:layout_y=”330dip”
android:layout_x=”35dip“>
</TextView>
<TextView
android:layout_height=”wrap_content”
android:layout_width=”fill_parent”
android:id=”@+id/TextView02″
android:text=”    ,    ,    ”
android:textColor=”#333″
android:textSize=”18dip”
android:layout_y=”365dip”
android:layout_x=”35dip“>
</TextView>
</AbsoluteLayout>
 WQVGA 의 시 뮬 레이 터 에 표 시 된 효 과 를 보 여 줍 니 다.
 
 WVGA 800 의 시 뮬 레이 터 아래 에서 디 스 플레이 효 과 를 보십시오.
 
 Tip:절대 위치 에서 하위 요소 가 layot 를 설정 하지 않 으 면x 와 layoty.그러면 기본 값 은 0 입 니 다.즉,FrameLayout 처럼 이 요 소 는 왼쪽 상단 에 나타 납 니 다.
2.상대 레이아웃
상대 적 으로 레이아웃 RelativeLayout 는 하위 요소 가 부모 요소 나 형제 요소 에 비해 위 치 를 지정 할 수 있 도록 합 니 다.이것 은 실제 레이아웃 에서 가장 자주 사용 하 는 레이아웃 방식 중 하나 입 니 다.유연성 이 많 고 속성 도 많 으 며 조작 난이도 도 높 으 며 속성 간 에 충돌 할 가능성 도 높 으 므 로 상대 적 인 구 조 를 사용 할 때 테스트 를 많이 해 야 한다.
다음 에 우 리 는 상대 적 인 레이아웃 으로 위의 예 를 한 번 더 하고 먼저 그림 을 놓 으 며 다른 두 텍스트 는 각각 이전 요소 에 대한 포 지 셔 닝 을 합 니 다.

<?xml version=”1.0″ encoding=”utf-8″?><RelativeLayout android:id=”@+id/RelativeLayout01″
android:layout_width=”fill_parent”
android:layout_height=”fill_parent”
android:background=”#fff”
xmlns:android=”http://schemas.android.com/apk/res/android”><ImageView android:id=”@+id/ImageView01″
android:src=”@drawable/android”
android:layout_width=”fill_parent”
android:layout_height=”wrap_content”
android:layout_marginTop=”40dip”
>
</ImageView>
<TextView
android:layout_height=”wrap_content”
android:layout_width=”wrap_content”
android:id=”@+id/TextView01″
android:text=”Android2.2     ”
android:textColor=”#0f0″
android:textSize=”28dip”
android:layout_below=”@id/ImageView01″
android:layout_centerHorizontal=”true”
android:layout_marginTop=”10dip”>
</TextView>
<TextView
android:layout_height=”wrap_content”
android:layout_width=”wrap_content”
android:id=”@+id/TextView02″
android:text=”    ,    ,    ”
android:textColor=”#333″
android:textSize=”18dip”
android:layout_below=”@id/TextView01″
android:layout_centerHorizontal=”true”
android:layout_marginTop=”5dip“>
</TextView>
</RelativeLayout>
 WQVGA 의 시 뮬 레이 터 에 표 시 된 효 과 를 보 여 줍 니 다.

더 큰 화면(WVGA 800)시 뮬 레이 터 에 표시 되 는 효 과 를 다시 봅 니 다.

위의 그림 에서 볼 수 있 듯 이 인터페이스 효 과 는 대체적으로 일치 하 는 것 이지 절대적 인 포 지 셔 닝 처럼 왼쪽 상단 에 움 츠 러 드 는 것 이 아니다.학생 들 이 자동 크기 조정 기능 을 보 는 것 은 dip 를 단위 로 사용 하 는 것 이 가 져 온 좋 은 점 입 니 다.dip 에 대해 모 르 는 학생 들 은 제 가 개발 지식 에서 쓴 전문 적 인 글 을 볼 수 있 습 니 다.
다음은 Relative Layout 가 사용 하 는 중요 한 속성 을 소개 합 니 다.
첫 번 째 클래스:속성 값 은 true 또는 false 입 니 다.
  • android:layout_centerHrizontal                                           수준 이 중간이다.
  • android:layout_centerVertical                                            수직 으로 가운데
  • android:layout_centerInparent                                           부모 요소 에 비해 완전히 중간 에 있 습 니 다
  • android:layout_alignParentBottom                                     부모 원소 의 아래 가장자리 에 바짝 붙 어 있다.
  • android:layout_alignParentLeft                                          부모 원소 의 왼쪽 가장자리 에 바짝 붙 어 있다.
  • android:layout_alignParentRight                                        부모 원소 의 오른쪽 가장자리 에 바짝 붙 어 있다.
  • android:layout_alignParentTop                                          부모 원소 의 상단 가장자리 에 바짝 붙 여 라.
  • android:layout_alignWithParentIfMissing                            대응 하 는 형제 요 소 를 찾 지 못 하면 부모 요 소 를 참고 물 로 한다.
  • 두 번 째 클래스:속성 값 은 id 의 인용 이름"@id/id-name"이 어야 합 니 다.
  • android:layout_below                          어떤 원소 의 아래 에 있다.
  • android:layout_above                          어떤 원소 의 위 에 있다.
  • android:layout_toLeftOf                       어떤 원소 의 왼쪽 에 있 습 니 다.
  • android:layout_toRightOf                     어떤 원소 의 오른쪽 에 있 습 니 다.
  • android:layout_alignTop                      본 요소 의 상단 가장자리 와 특정한 요소 의 상단 가장자리 가 일치 합 니 다
  • android:layout_alignLeft                      본 요소 의 왼쪽 가장자리 와 특정한 요소 의 왼쪽 가장자리 가 일치 합 니 다
  • android:layout_alignBottom                 본 요소 의 아래 가장자리 와 특정한 요소 의 아래 가장자리 가 일치 합 니 다
  • android:layout_alignRight                    이 요소 의 오른쪽 가장자리 와 특정한 요소 의 오른쪽 가장자리 가 정렬 되 어 있 습 니 다.
  • 세 번 째 유형:속성 값 은 구체 적 인 픽 셀 값 입 니 다.예 를 들 어 30dip,40px 등 입 니 다.
  • android:layout_marginBottom              어떤 원소 의 바닥 가장자리 에서 의 거리
  • android:layout_marginLeft                   어떤 원소 의 왼쪽 가장자리 에서 의 거리
  • android:layout_marginRight                 모 원소 의 오른쪽 가장자리 에서 의 거리
  • android:layout_marginTop                   어떤 원소 의 가장자리 에서 의 거리
  • 우 리 는 위의 예 를 다시 한 번 만 들 겠 습 니 다.이번 에는 속성 을 더 넣 고 여러분 이 시험 해 보 세 요.
    
    <?xml version=”1.0″ encoding=”utf-8″?><RelativeLayout android:id=”@+id/RelativeLayout01″
    android:layout_width=”fill_parent”
    android:layout_height=”fill_parent”
    android:background=”#cfff”       argb,   c    
    xmlns:android=”http://schemas.android.com/apk/res/android”><ImageView android:id=”@+id/ImageView01″
    android:src=”@drawable/android”
    android:layout_width=”wrap_content”
    android:layout_height=”wrap_content”
    android:layout_marginTop=”40dip”
    android:layout_centerHorizontal=”true”>
    </ImageView><TextView
    android:layout_height=”wrap_content”
    android:layout_width=”wrap_content”
    android:id=”@+id/TextView01″
    android:text=”Android2.2     ”
    android:textColor=”#0f0″
    android:textSize=”28dip”
    android:layout_below=”@id/ImageView01″
    android:layout_centerHorizontal=”true”
    android:layout_marginTop=”10dip”>
    </TextView><TextView
    android:layout_height=”wrap_content”
    android:layout_width=”wrap_content”
    android:id=”@+id/TextView02″
    android:text=”    ,    ,    ”
    android:textColor=”#333″
    android:textSize=”18dip”
    android:layout_below=”@id/TextView01″
    android:layout_centerHorizontal=”true”
    android:layout_marginTop=”5dip”>
    </TextView><TextView
    android:layout_height=”wrap_content”
    android:layout_width=”wrap_content”
    android:id=”@+id/TextView03″
    android:text=”alignTop”
    android:textColor=”#333″
    android:textSize=”18dip”
    android:layout_alignTop=”@id/ImageView01″  ImageView01     
    android:layout_centerHorizontal=”true”>
    </TextView><TextView
    android:layout_height=”wrap_content”
    android:layout_width=”wrap_content”
    android:id=”@+id/TextView04″
    android:text=”alignLeft”
    android:textColor=”#333″
    android:textSize=”18dip”
    android:layout_alignLeft=”@id/ImageView01″
    android:layout_centerHorizontal=”true”>
    </TextView><TextView
    android:layout_height=”wrap_content”
    android:layout_width=”wrap_content”
    android:id=”@+id/TextView05″
    android:text=”alignRight”
    android:textColor=”#333″
    android:textSize=”18dip”
    android:layout_alignRight=”@id/ImageView01″
    android:layout_centerHorizontal=”true”>
    </TextView><TextView
    android:layout_height=”wrap_content”
    android:layout_width=”wrap_content”
    android:id=”@+id/TextView06″
    android:text=”alignBottom”
    android:textColor=”#333″
    android:textSize=”18dip”
    android:layout_alignBottom=”@id/ImageView01″
    android:layout_centerHorizontal=”true”>
    </TextView>
    </RelativeLayout>

    이상 은 Android AbsoluteLayout 와 RelativeLayout 레이아웃 에 대한 소개 입 니 다.추 후 관련 자 료 를 계속 정리 하 겠 습 니 다.본 사이트 에 대한 지지 에 감 사 드 립 니 다!

    좋은 웹페이지 즐겨찾기